


"""
闭包：
1、就是函数嵌套，内层函数引用外层函数的变量，返回结果，外层函数将内层函数名称作为参数返回
2、优点是避免函数使用全局变量导致值被修改的风险性大
"""


def function():
    a = 10
    def inner():
        nonlocal a
        a = a + 1
        print(a)
        return a
    return inner


ret = function()
ret()
ret()